<!DOCTYPE html>
<html><head>
<title>数组</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style type="text/css">

</style>
<style type="text/css">
.highlight  { background: #ffffff; }
.highlight .c { color: #999988; font-style: italic } /* Comment */
.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
.highlight .k { font-weight: bold } /* Keyword */
.highlight .o { font-weight: bold } /* Operator */
.highlight .cm { color: #999988; font-style: italic } /* Comment.Multiline */
.highlight .cp { color: #999999; font-weight: bold } /* Comment.Preproc */
.highlight .c1 { color: #999988; font-style: italic } /* Comment.Single */
.highlight .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */
.highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
.highlight .gd .x { color: #000000; background-color: #ffaaaa } /* Generic.Deleted.Specific */
.highlight .ge { font-style: italic } /* Generic.Emph */
.highlight .gr { color: #aa0000 } /* Generic.Error */
.highlight .gh { color: #999999 } /* Generic.Heading */
.highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
.highlight .gi .x { color: #000000; background-color: #aaffaa } /* Generic.Inserted.Specific */
.highlight .go { color: #888888 } /* Generic.Output */
.highlight .gp { color: #555555 } /* Generic.Prompt */
.highlight .gs { font-weight: bold } /* Generic.Strong */
.highlight .gu { color: #aaaaaa } /* Generic.Subheading */
.highlight .gt { color: #aa0000 } /* Generic.Traceback */
.highlight .kc { font-weight: bold } /* Keyword.Constant */
.highlight .kd { font-weight: bold } /* Keyword.Declaration */
.highlight .kp { font-weight: bold } /* Keyword.Pseudo */
.highlight .kr { font-weight: bold } /* Keyword.Reserved */
.highlight .kt { color: #445588; font-weight: bold } /* Keyword.Type */
.highlight .m { color: #009999 } /* Literal.Number */
.highlight .s { color: #d14 } /* Literal.String */
.highlight .na { color: #008080 } /* Name.Attribute */
.highlight .nb { color: #0086B3 } /* Name.Builtin */
.highlight .nc { color: #445588; font-weight: bold } /* Name.Class */
.highlight .no { color: #008080 } /* Name.Constant */
.highlight .ni { color: #800080 } /* Name.Entity */
.highlight .ne { color: #990000; font-weight: bold } /* Name.Exception */
.highlight .nf { color: #990000; font-weight: bold } /* Name.Function */
.highlight .nn { color: #555555 } /* Name.Namespace */
.highlight .nt { color: #000080 } /* Name.Tag */
.highlight .nv { color: #008080 } /* Name.Variable */
.highlight .ow { font-weight: bold } /* Operator.Word */
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
.highlight .mf { color: #009999 } /* Literal.Number.Float */
.highlight .mh { color: #009999 } /* Literal.Number.Hex */
.highlight .mi { color: #009999 } /* Literal.Number.Integer */
.highlight .mo { color: #009999 } /* Literal.Number.Oct */
.highlight .sb { color: #d14 } /* Literal.String.Backtick */
.highlight .sc { color: #d14 } /* Literal.String.Char */
.highlight .sd { color: #d14 } /* Literal.String.Doc */
.highlight .s2 { color: #d14 } /* Literal.String.Double */
.highlight .se { color: #d14 } /* Literal.String.Escape */
.highlight .sh { color: #d14 } /* Literal.String.Heredoc */
.highlight .si { color: #d14 } /* Literal.String.Interpol */
.highlight .sx { color: #d14 } /* Literal.String.Other */
.highlight .sr { color: #009926 } /* Literal.String.Regex */
.highlight .s1 { color: #d14 } /* Literal.String.Single */
.highlight .ss { color: #990073 } /* Literal.String.Symbol */
.highlight .bp { color: #999999 } /* Name.Builtin.Pseudo */
.highlight .vc { color: #008080 } /* Name.Variable.Class */
.highlight .vg { color: #008080 } /* Name.Variable.Global */
.highlight .vi { color: #008080 } /* Name.Variable.Instance */
.highlight .il { color: #009999 } /* Literal.Number.Integer.Long */
.pl-c {
    color: #969896;
}

.pl-c1,.pl-mdh,.pl-mm,.pl-mp,.pl-mr,.pl-s1 .pl-v,.pl-s3,.pl-sc,.pl-sv {
    color: #0086b3;
}

.pl-e,.pl-en {
    color: #795da3;
}

.pl-s1 .pl-s2,.pl-smi,.pl-smp,.pl-stj,.pl-vo,.pl-vpf {
    color: #333;
}

.pl-ent {
    color: #63a35c;
}

.pl-k,.pl-s,.pl-st {
    color: #a71d5d;
}

.pl-pds,.pl-s1,.pl-s1 .pl-pse .pl-s2,.pl-sr,.pl-sr .pl-cce,.pl-sr .pl-sra,.pl-sr .pl-sre,.pl-src,.pl-v {
    color: #df5000;
}

.pl-id {
    color: #b52a1d;
}

.pl-ii {
    background-color: #b52a1d;
    color: #f8f8f8;
}

.pl-sr .pl-cce {
    color: #63a35c;
    font-weight: bold;
}

.pl-ml {
    color: #693a17;
}

.pl-mh,.pl-mh .pl-en,.pl-ms {
    color: #1d3e81;
    font-weight: bold;
}

.pl-mq {
    color: #008080;
}

.pl-mi {
    color: #333;
    font-style: italic;
}

.pl-mb {
    color: #333;
    font-weight: bold;
}

.pl-md,.pl-mdhf {
    background-color: #ffecec;
    color: #bd2c00;
}

.pl-mdht,.pl-mi1 {
    background-color: #eaffea;
    color: #55a532;
}

.pl-mdr {
    color: #795da3;
    font-weight: bold;
}

.pl-mo {
    color: #1d3e81;
}
.task-list {
padding-left:10px;
margin-bottom:0;
}

.task-list li {
    margin-left: 20px;
}

.task-list-item {
list-style-type:none;
padding-left:10px;
}

.task-list-item label {
font-weight:400;
}

.task-list-item.enabled label {
cursor:pointer;
}

.task-list-item+.task-list-item {
margin-top:3px;
}

.task-list-item-checkbox {
display:inline-block;
margin-left:-20px;
margin-right:3px;
vertical-align:1px;
}
</style>
<!-- base href="file:///D:/MD%E7%AC%94%E8%AE%B0/js/" -->
</head>
<body>
<h1 id="-">数组</h1>
<p></p><hr><p></p>
<pre><code>         *     数组: 强调顺序的数据集合
         *     长度和下标都是经常和数组结合使用
         *     下标其实是个比较特殊的属性名
</code></pre><hr>

<ol>
<li>数组可以设置 主动设置数组的长度比原来大时，多出的是undefined：比原来少，相当于删除后面的元素</li></ol>
<pre><code>var arr3=[1,2];
             arr3.length=2;     //主动设置数组的长度比原来大时，多出的是undefined：比原来少，相当于删除后面的元素
             console.log("arr3的长度",arr3.length);
             arr3[5]=5;   //设置后续下标的元素，相当于增加了数组长度
</code></pre><ol>
<li>清空控制台 console.clear();</li></ol>
<hr>

<h2 id="-">元素的添加和删除</h2>
<pre><code>var arr4=[1,2,3];//定义一个数组
</code></pre><h3 id="-">元素的添加</h3>
<ol>
<li>作用在元素组上，从队尾增加新元素 (push)<pre><code>arr4.push(4,5,6);
          console.log("push:",arr4);
</code></pre></li><li>作用在元素组上，从队头增加一个新元素 (unshift)<pre><code>arr4.unshift(-1,0);
          console.log("unshift",arr4);
</code></pre></li></ol>
<h3 id="-">元素的删除</h3>
<ol>
<li>作用在元素组上，从队尾删除一个元素 (pop)<pre><code>arr4.pop();
          console.log("pop:",arr4);
</code></pre></li><li>作用在元素组上，从队头删除一个新元素  (shift)<pre><code>arr4.shift();
          console.log("shift",arr4);
</code></pre></li><li>删除队尾的多个元素<pre><code>console.log(arr4.length=arr4.length-2); //删除队尾的两个元素
</code></pre></li><li><p>封装 删除数组队尾的多个元素</p>
<pre><code>function popMore(arr,num){

              arr.length=arr.length-num;
              return arr;
          }
         console.log(popMore([1,2,3,4,5,6],3)) ;
</code></pre></li></ol>
<hr>

<h2 id="-">数组元素的替代</h2>
<hr>

<pre><code>         * splice 替代
         * splice(start,lenght,newElement)
         * start:被替代元素的开始下标
         * lenght:从start开始数的长度
         * newElement：新替代的元素，可设置多个
         * 替代：三个参数都给，长度设置为1，替代单个元素，长度大于1,替代多个元素
         * 删除:只给两个元素；
         * 增加:三个参数都给,长度设置为0;
         * 
         * 返回值；以数组的形式返回被删除元素
</code></pre><pre><code>var arr7=["a","b","c","d"];
            arr7.splice(0,2);
            console.log("splice:",arr7);
</code></pre><hr>

<h2 id="-">数组的截取</h2>
<ul>
<li>截取数组,返回新数组 </li><li>第一个参数为开始的下标</li><li>第二个为结束的位置 第一个为一</li><li>如果第一个参数大于或等于第二个参数 得到的是空数组<pre><code>var arr8=["a","b","c","d"];
          arr8=arr8.slice(1,3);
          console.log("slice",arr8); //截取后得到的数组为["a","b"]
</code></pre></li></ul>
<p><img src="%E6%95%B0%E7%BB%84_files/a77EHeS.jpg" alt=""></p>
<hr>

<h2 id="map">map</h2>
<p><strong>* 作用：遍历数组的每个元素并处理元素的值，返回新数组</strong></p>
<pre><code>var arr12=[1,2,3];
            arr12=arr12.map(function(item, index, arr){
//                console.log("map",a,b,c);
                return item*2;

            });
            console.log("map:",arr12);
</code></pre><ul>
<li>item:表示的是数组的每个元素,index表示每个数组的下标</li></ul>
<h2 id="filter">filter</h2>
<p><strong>作用：用于过滤内容，回调函数返回true，添加到新数组；返回false，则不添加</strong></p>
<pre><code>var arr13= [1,2,3,4,5,6];
            arr13=arr13.filter(function(item,index){
                if(item%2!==0){
                    //奇数
                return false;    
                }
                return true;
            });
console.log("filter:",arr13);
* 得到的结果是filter [2,4,6]
</code></pre><h2 id="foreach">forEach</h2>
<p><strong>作用：遍历数组，返回undefined</strong></p>
<pre><code>var arr14=[1,2,3];
            arr14=arr14.forEach(function(item,index){
                console.log("item",item);
//                return false;
            });
            console.log("arr14",arr14);
*得到的结果是
item 1
item 2
item 3
arr14 undefined
</code></pre><hr> 

<h1 id="math-">Math属性</h1>
<ol>
<li>Math.random() //取随机数 ，在(0,1)之间</li><li>Math.ceil // 向上取整</li><li>Math.floor //向下取整</li></ol>
<p><img src="%E6%95%B0%E7%BB%84_files/a77EHeS.jpg" alt=""></p>




</body></html>
<!-- This document was created with MarkdownPad, the Markdown editor for Windows (http://markdownpad.com) -->